/*
 * RKernel.h
 *
 *  Created on: Jul 6, 2012
 *      Author: kobe
 */

#ifndef RKERNEL_H_
#define RKERNEL_H_

#include "Rule.h"

class R_Kernel: public Rule {
public:
	R_Kernel(AtomicAction*, Proposition*);
	virtual ~R_Kernel();
	std::vector<Sequent*> run(Sequent*);
	std::string toString();
	std::string toLatex();
	RuleType getRuleType();

private:
	AtomicAction *mAction;
	Proposition *mKernel;
	Context* search(Context*);
};

#endif /* RKERNEL_H_ */
